// 1.导入 http
const http = require("http");
const path = require("path");
const fs = require("fs");
// 2.创建web服务器
const server = http.createServer();
// 3.绑定监听事件
server.on("request", (req, res) => {
  //a.找到了图片的url
  let url = req.url;

  //e.对首页的处理  
  if (url == '/') {
    url = "/index.html";
  }
  //b.图片的地址，需要 进行连接  join
  if (url != '/favicon.ico') {
    let filename = path.join("rm", url);
    let rep = new RegExp('%20', "g")
    filename.replace(rep, ' ')
    console.log(filename)
    //c.判断图片资源是否存在
    if (fs.existsSync(filename)) {//图片存在
      //d.读取图片内容
      fs.readFile(filename, (err, data) => {//data是读取的文件内容
        if (!err) {//文件读取正确
          ////向客户端发送响应数据,并结束本次请求的处理过程
          res.end(data);
        } else {//w文件读取错误
          res.setHeader('content-type', 'text/html;charset=utf-8');
          res.statusCode = 500;
          res.end("图片资源读取错误");
        }
      })

    }

  } else {//图片不存在
    res.setHeader('content-type', 'text/html;charset=utf-8');
    res.statusCode = 404;
    res.end("图片资源不存在");
  }
  //res.end("start");
})
// 4.启动服务
server.listen(8080, () => {
  console.log("服务器已经启动，http://127.0.0.1:8080");
})

//如果因为 没有 favicon.ico  ,解决：1.拷贝一个  favicon.ico 图标进来